141 research outputs found
Toward a Formal Semantics for Autonomic Components
Autonomic management can improve the QoS provided by parallel/ distributed
applications. Within the CoreGRID Component Model, the autonomic management is
tailored to the automatic - monitoring-driven - alteration of the component
assembly and, therefore, is defined as the effect of (distributed) management
code. This work yields a semantics based on hypergraph rewriting suitable to
model the dynamic evolution and non-functional aspects of Service Oriented
Architectures and component-based autonomic applications. In this regard, our
main goal is to provide a formal description of adaptation operations that are
typically only informally specified. We contend that our approach makes easier
to raise the level of abstraction of management code in autonomic and adaptive
applications.Comment: 11 pages + cover pag
Architecting Self-adaptive Software Systems
Peer reviewe
On Resilient Behaviors in Computational Systems and Environments
The present article introduces a reference framework for discussing
resilience of computational systems. Rather than a property that may or may not
be exhibited by a system, resilience is interpreted here as the emerging result
of a dynamic process. Said process represents the dynamic interplay between the
behaviors exercised by a system and those of the environment it is set to
operate in. As a result of this interpretation, coherent definitions of several
aspects of resilience can be derived and proposed, including elasticity, change
tolerance, and antifragility. Definitions are also provided for measures of the
risk of unresilience as well as for the optimal match of a given resilient
design with respect to the current environmental conditions. Finally, a
resilience strategy based on our model is exemplified through a simple
scenario.Comment: The final publication is available at Springer via
http://dx.doi.org/10.1007/s40860-015-0002-6 The paper considerably extends
the results of two conference papers that are available at http://ow.ly/KWfkj
and http://ow.ly/KWfgO. Text and formalism in those papers has been used or
adapted in the herewith submitted pape
Adapting Quality Assurance to Adaptive Systems: The Scenario Coevolution Paradigm
From formal and practical analysis, we identify new challenges that
self-adaptive systems pose to the process of quality assurance. When tackling
these, the effort spent on various tasks in the process of software engineering
is naturally re-distributed. We claim that all steps related to testing need to
become self-adaptive to match the capabilities of the self-adaptive
system-under-test. Otherwise, the adaptive system's behavior might elude
traditional variants of quality assurance. We thus propose the paradigm of
scenario coevolution, which describes a pool of test cases and other
constraints on system behavior that evolves in parallel to the (in part
autonomous) development of behavior in the system-under-test. Scenario
coevolution offers a simple structure for the organization of adaptive testing
that allows for both human-controlled and autonomous intervention, supporting
software engineering for adaptive systems on a procedural as well as technical
level.Comment: 17 pages, published at ISOLA 201
A new approach to deploy a self-adaptive distributed firewall
Distributed firewall systems emerged with the proposal of protecting individual hosts against attacks originating from inside the network. In these systems, firewall rules are centrally created, then distributed and enforced on all servers that compose the firewall, restricting which services will be available. However, this approach lacks protection against software vulnerabilities that can make network services vulnerable to attacks, since firewalls usually do not scan application protocols. In this sense, from the discovery of any vulnerability until the publication and application of patches there is an exposure window that should be reduced. In this context, this article presents Self-Adaptive Distributed Firewall (SADF). Our approach is based on monitoring hosts and using a vulnerability assessment system to detect vulnerable services, integrated with components capable of deciding and applying firewall rules on affected hosts. In this way, SADF can respond to vulnerabilities discovered in these hosts, helping to mitigate the risk of exploiting the vulnerability. Our system was evaluated in the context of a simulated network environment, where the results achieved demonstrate its viability
Kuksa*: Self-Adaptive Microservices in Automotive Systems
In pervasive dynamic environments, vehicles connect to other objects to send
operational data and receive updates so that vehicular applications can provide
services to users on demand. Automotive systems should be self-adaptive,
thereby they can make real-time decisions based on changing operating
conditions. Emerging modern solutions, such as microservices could improve
self-adaptation capabilities and ensure higher levels of quality performance in
many domains. We employed a real-world automotive platform called Eclipse Kuksa
to propose a framework based on microservices architecture to enhance the
self-adaptation capabilities of automotive systems for runtime data analysis.
To evaluate the designed solution, we conducted an experiment in an automotive
laboratory setting where our solution was implemented as a microservice-based
adaptation engine and integrated with other Eclipse Kuksa components. The
results of our study indicate the importance of design trade-offs for quality
requirements' satisfaction levels of each microservices and the whole system
for the optimal performance of an adaptive system at runtime
- …